package com.zmcn.msg.business.msgOrder.service;

import java.util.Date;

import com.zmcn.msg.bean.vo.UserVO;
import com.zmcn.msg.business.msgOrder.vo.MsgOrderVO;
import com.zmcn.msg.fw.action.Page;

/**
 * 
 * 消息订单业务接口
 * 
 * @author <b>欧建东<br/>
 *         Email:oyjd@163.com</b>
 * @version 1.0
 */
public interface MsgOrderService {
	/**
	 * 获取消息订单列表数据
	 * 
	 * @param page
	 *            页面对象
	 * @return
	 */
	Page<MsgOrderVO> getList(Page<MsgOrderVO> page);

	/**
	 * 根据ID获取消息订单对象信息
	 * 
	 * @param id
	 *            ID
	 * @return
	 */
	MsgOrderVO getMsgOrderVO(String orderId);

	/**
	 * 增加消息订单
	 * 
	 * @param msgId
	 *            消息ID
	 * @param groups
	 *            用户群
	 * @param user
	 *            当前用户
	 */
	void add(String msgId, String[] groups, String user);

	/**
	 * 修改消息订单
	 * 
	 * @param orderId
	 *            订单ID
	 * @param msgId
	 *            消息ID
	 * @param creator
	 *            创建者
	 * @param createTime
	 *            创建时间
	 * @param sendor
	 *            下发者
	 * @param sendTime
	 *            下发时间
	 * @param user
	 *            当前用户
	 */
	void edit(String orderId, String msgId, String creator, Date createTime, String sendor, Date sendTime, String user);

	/**
	 * 删除消息订单
	 * 
	 * @param ids
	 *            多个ID
	 * @param user
	 *            当前用户
	 * @return
	 */
	void remove(String[] ids, String user);
	
	/**
	 * <p>Title: sendmsg</p>
	 * <p>Description: TODO 批量下发消息订单</p>
	 * @param orderIds   消息订单ID
	 * @param user       下发者
	 * @return
	 * int
	 * @throws
	 * @author 谭永戈
	 * 2012-12-7 下午5:08:20
	 */
	int sendmsg(String[] orderIds, UserVO user);

}
